/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package demo.regex;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 *
 * @author VANDH
 */
public class MainDemo {
// Viết mẫu kiểm tra password nhập vào có hợp lệ hay không
// Viết mẫu kiểm tra email hợp lệ không

    public static void main(String[] args) {
//        Regular expression
//        String p = "this"; // -> pattern
//        String p = "th[ia]s"; // -> pattern
//        String p = "th[a-f0-9]s"; // -> pattern, group position
//        String p = "th[^a-f0-9]s"; // -> pattern, group negative
//        String p = "th\\ws"; // -> pattern, \w -> predefined class
//        String p = "th\\Ws"; // -> pattern, group negative
//      \w == [a-zA-Z_0-9]  -> w là word
//      \W == [^a-zA-Z_0-9]
//      \d == [0-9]
//      \D == [^0-9] -> d là digits
//      \s == bắt tất cả kí tự trắng, \S
//      . -> 1 kí tự bất kì
//        String dest = "To change this th0s th#s template, choose Tools Templates";
//        String p = "q.?a";    // 0 hoặc 1, dấu . tương ứng mọi kí tự
//        String p = "qu?a";    // 0 hoặc 1
//        String p = "qu*a";  // 0 hoặc n
//        String p = "q.+a";  // 1 hoặc n -> xử lí theo phương thức tham ăn (gready)
        String p = "^q.+?a";  // 1 hoặc n -> xử lí theo phương thức tham ăn
        String dest = "uality uestions create a quuuality answer qua";

        Pattern pattern = Pattern.compile(p);
        Matcher matcher = pattern.matcher(dest);

        while (matcher.find()) {
            System.out.println(matcher.group());
        }
    }
}